home *** CD-ROM | disk | FTP | other *** search
/ Aminet 30 / Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso / Aminet / text / dtp / Notes1.3.lha / Notes / deutsch / Violinenschlüssel.file < prev    next >
Text File  |  1999-02-11  |  41KB  |  1,370 lines

  1. /* Unterprogramm für "Noten.pprx" */
  2.  
  3. signal on halt
  4. signal on break_c
  5. signal on break_e
  6. signal on break_d
  7. call ppm_SetStyle(N)
  8. call ppm_SetMagMode(180)
  9. call ppm_UpdateScreen()
  10.  
  11.  
  12. noteneingabe:
  13.     /* Kleinster notenabstand */
  14.     sysart = "Notensystemart:2"
  15.     systemart = ppm_Getform("Bitte noch einmal die gewählte Systemart eingeben. (2, 1v oder 1b)", 3, sysart)
  16.     select
  17.     when systemart == '2' then zdist = 4
  18.     when systemart == '1v' then zdist = 2
  19.     when systemart == '1b' then zdist = 2
  20.     otherwise noteneingabe()
  21.     end
  22.     zdist2 = zdist-2
  23.     xgrdform = "(1,2,4,8 oder 16)"
  24.     xgrd = ppm_GetForm("Bitte für den kleinsten Notenwert eingeben ...(nichts=ABBRUCH)", 3, xgrdform)
  25.     if xgrd == '' then  exit_msg("Abbruch")
  26.     select
  27.      when xgrd == '1' then xg =0.7
  28.      when xgrd == '2' then xg =1.4
  29.      when xgrd == '4' then xg =2.8
  30.      when xgrd == '8' then xg =5.6
  31.      when xgrd == '16' then xg =11.2
  32.      otherwise noteneingabe()
  33.     end
  34.  
  35.    /* Punktgröße der Noten */
  36.    notepkt = 26
  37.    call ppm_SetJustification(0)
  38.    
  39.    zz = 0   /* Zeilenzähler */
  40.    notex = 3
  41.    page = ppm_CurrentPage()
  42.  
  43. pfad:
  44.    do
  45.            choose=ppm_Inform(2,"Auswahl des Notenfiles oder Abbruch ...", "Abbruch","File")
  46.            if choose == 0 then exit_msg("Abbruch")
  47.            eingabe = ppm_GetFileName("Bitte Notenscriptfile wählen ...", "Noten:")
  48.            res = OPEN(notenfile, eingabe, 'R')
  49.            if res == 0 then
  50.              do
  51.                  call ppm_inform(1,"Fehler in der Eingabe, oder File existiert nicht !!!","OK")
  52.                  pfad()
  53.              end
  54.            call ppm_ShowStatus("OK, ich arbeite ...")
  55.            auslesen(notenfile)
  56.     end
  57.  
  58.     /* x-Abstände der Noten zueinander */
  59. auslesen:
  60.         do
  61.           parse arg file
  62.           noten = READCH(file, 4000)
  63.           i=1
  64.           do forever
  65.             nw = word(noten, i)
  66.             nn = word(noten, i+1)
  67.             al = word(noten, i+2)
  68.             if nw == 'P' then nw = 'p'
  69.             if nw == 'D' then nw = 'd'
  70.             if nw == 'L' then nw = 'l'
  71.             if nw == 'T' then nw = 't'
  72.             if nn == 'T' then nn = 't'
  73.             if nw == 'J' then nw = 'j'
  74.             select
  75.               when al == (X2C(410a)) then al = 'a'
  76.               when al == (X2C(610a)) then al = 'a'
  77.               when al == (X2C(300a)) then al = '0'
  78.               otherwise exit_msg("Da war ein Fehler!")
  79.             end
  80.             if nw == 'E' then nw = 'e'
  81.             call auswahl()
  82.             i=i+3
  83.           end
  84.         end
  85.  
  86.  
  87.       select
  88.         when nn=='GB2' then nn = 'Gb2'
  89.         when nn=='AB2' then nn = 'Ab2'
  90.         when nn=='DB3' then nn = 'Db3'
  91.         when nn=='EB3' then nn = 'Eb3'
  92.         when nn=='GB3' then nn = 'Gb3'
  93.         when nn=='AB3' then nn = 'Ab3'
  94.         when nn=='DB4' then nn = 'Db4'
  95.         when nn=='EB4' then nn = 'Eb4'
  96.         when nn=='GB4' then nn = 'Gb4'
  97.         when nn=='AB4' then nn = 'Ab4'
  98.         when nn=='DB5' then nn = 'Db5'
  99.         when nn=='EB5' then nn = 'Eb5'
  100.         otherwise NOP
  101.       end
  102.  
  103. auswahl:
  104.  
  105. do
  106.     select
  107.       when nw == 'j' then do
  108.                           zz = 0   /* Zeilenzähler */
  109.                           notex = 3
  110.                           return
  111.                           end
  112.       when nw == 'e' then
  113.         do
  114.             call ppm_ClearStatus()
  115.             exit_msg("Geschafft!")
  116.         end
  117.       when nw=='s' then
  118.           do
  119.           xw = xg/16
  120.           nw='x'
  121.           yv = 0
  122.           end
  123.       when nw=='S' then
  124.           do
  125.           xw = xg/16
  126.           nw='X'
  127.           yv = 0.47
  128.           end
  129.       when nw=='a' then
  130.           do
  131.           xw = xg/8
  132.           nw='e'
  133.           yv = 0
  134.           end
  135.       when nw=='A' then
  136.           do
  137.           xw = xg/8
  138.           nw='E'
  139.           yv = 0.47
  140.           end
  141.       when nw=='v' then
  142.           do
  143.           xw = xg/4
  144.           nw='q'
  145.           yv = 0
  146.           end
  147.       when nw=='V' then
  148.           do
  149.           xw = xg/4
  150.           nw='Q'
  151.           yv = 0.47
  152.           end
  153.       when nw=='h' then
  154.           do
  155.           xw = xg/2
  156.           yv = 0
  157.           end
  158.       when nw=='H' then
  159.           do
  160.           xw = xg/2
  161.           yv = 0.47
  162.           end
  163.       when nw=='g' then
  164.           do
  165.           xw = xg
  166.           nw='w'
  167.           yv = 0
  168.           end
  169.       when nw=='G' then
  170.           do
  171.           xw = xg
  172.           nw='W'
  173.           yv = 0.47
  174.           end
  175.  
  176.      /* Sprung an den Anfang der Zeile */
  177.       when nw == 'left' then
  178.           do
  179.            call ppm_SetPagePosition(0, zz+1)
  180.           end
  181.  
  182.      /* Punkt nach der Note - muß als erstes eingegeben werden falls gewünscht
  183.         den nötigen Freiraum mit "sp" eingeben */
  184.  
  185.       when nw == 'pk' then
  186.           do
  187.             if notex < 3 then
  188.             do
  189.               notex = bakx
  190.               zz = zz - zdist
  191.               call ppm_SetSize(25)
  192.               box#id = ppm_CreateBox(notex+0.4, yw+zz+0.26-yv, 0.3, 0.9, 0)
  193.               call ppm_SetSize(20)
  194.               call ppm_TextIntoBox(box#id, 'd')
  195.             end
  196.             else
  197.             do
  198.               call ppm_SetSize(25)
  199.               box#id = ppm_CreateBox(notex-xw+0.4, yw+zz+0.26-yv, 0.3, 0.9, 0)
  200.               call ppm_SetSize(20)
  201.               call ppm_TextIntoBox(box#id, 'd')
  202.             end
  203.            select
  204.                when nn == '1' then
  205.                do
  206.                xw = xg
  207.                notex = notex+xw
  208.                end
  209.                when nn == '2' then
  210.                do
  211.                xw = xg/2
  212.                notex = notex+xw
  213.                end
  214.                when nn == '4' then
  215.                do
  216.                xw = xg/4
  217.                notex = notex+xw
  218.                end
  219.                when nn == '8' then
  220.                do
  221.                xw = xg/8
  222.                notex = notex+xw
  223.                end
  224.                when nn == '16' then
  225.                do
  226.                xw  = xg/16
  227.                notex = notex+xw
  228.                end
  229.                when nn == 't' then
  230.                do
  231.                xw  = 0.2
  232.                notex = notex+xw
  233.                end
  234.                when nn == '0' then do
  235.                end
  236.                otherwise
  237.                do
  238.                 call ppm_ClearStatus()
  239.                 exit_msg("Da war ein Fehler")
  240.                end
  241.            end
  242.            if notex >=18.7 then
  243.                do
  244.                  notex = 2.5
  245.                  zz = zz + zdist
  246.                end
  247.            return
  248.           end
  249.  
  250.       when nw == 'PK' then
  251.           do
  252.             if notex < 3 then
  253.             do
  254.               notex = bakx
  255.               zz = zz - zdist
  256.               call ppm_SetSize(25)
  257.               box#id = ppm_CreateBox(notex+0.4, yw+zz+0.26-yv, 0.3, 0.9, 0)
  258.               call ppm_SetSize(20)
  259.               call ppm_TextIntoBox(box#id, 'd')
  260.             end
  261.             else
  262.             do
  263.               call ppm_SetSize(25)
  264.               box#id = ppm_CreateBox(notex-xw+0.4, yw+zz+0.26-yv, 0.3, 0.9, 0)
  265.               call ppm_SetSize(20)
  266.               call ppm_TextIntoBox(box#id, 'd')
  267.             end
  268.            select
  269.                when nn == '1' then
  270.                do
  271.                xw = xg
  272.                notex = notex+xw
  273.                end
  274.                when nn == '2' then
  275.                do
  276.                xw = xg/2
  277.                notex = notex+xw
  278.                end
  279.                when nn == '4' then
  280.                do
  281.                xw = xg/4
  282.                notex = notex+xw
  283.                end
  284.                when nn == '8' then
  285.                do
  286.                xw = xg/8
  287.                notex = notex+xw
  288.                end
  289.                when nn == '16' then
  290.                do
  291.                xw  = xg/16
  292.                notex = notex+xw
  293.                end
  294.                when nn == 't' then
  295.                do
  296.                xw  = 0.2
  297.                notex = notex+xw
  298.                end
  299.                when nn == '0' then
  300.                do
  301.                end
  302.                otherwise
  303.                do
  304.                 call ppm_ClearStatus()
  305.                 exit_msg("Da war ein Fehler")
  306.                end
  307.            end
  308.            if notex >=18.7 then
  309.                do
  310.                  notex = 2.5
  311.                  zz = zz + zdist
  312.                end
  313.            return
  314.           end
  315.  
  316.       /* Taktstrich */
  317.       when nw == 't' then
  318.           do
  319.            call ppm_SetLineWeight(0.25)
  320.            call ppm_DrawLine(notex, 2+zz, notex, 2.8+zz)
  321.            notex = notex+0.2
  322.            return
  323.           end
  324.  
  325.      /* Pausen */
  326.       when nw == 'p' then
  327.         do
  328. pausenwert:
  329.          /*  wert = ppm_GetForm("1/1 1/2 1/4 1/8 1/16 ...?", 2, "1 , 2, 4, 8, 16") */
  330.            x = notex
  331.            select
  332.                when nn== '0' then do
  333.                                   end
  334.                when nn== '1' then do
  335.  
  336.                    y = 2.28+zz
  337.                    call ppm_SetLineWeight(4)
  338.                    call ppm_DrawLine(x, y, x+0.4, y)
  339.                    call ppm_SetLineWeight(0.25)
  340.                    xw = xg
  341.                    notex = notex+xw
  342.                end
  343.  
  344.                when nn== '2' then do
  345.  
  346.                    y = 2.32+zz
  347.                    call ppm_SetLineWeight(4)
  348.                    call ppm_DrawLine(x, y, x+0.4, y)
  349.                    call ppm_SetLineWeight(0.25)
  350.                    xw = xg/2
  351.                    notex = notex+xw
  352.                end
  353.  
  354.                when nn== '4' then do
  355.  
  356.                    y = 2.07+zz
  357.                    Pbox = ppm_CreateBox(x, y, 0.59, 0.86, 0)
  358.                    boxnm = ppm_DocNextBox(Pbox)
  359.                    call ppm_DeleteContents(boxnm)
  360.                    call ppm_ImportGraphic(boxnm, 'Genies:noten_pausen/viertelPause', pause)
  361.                    xw = xg/4
  362.                    notex = notex+xw
  363.                end
  364.  
  365.                when nn== '8' then do
  366.  
  367.                    y = 2.21+zz
  368.                    Pbox = ppm_CreateBox(x, y, 0.27, 0.42, 0)
  369.                    boxnm = ppm_DocNextBox(Pbox)
  370.                    call ppm_DeleteContents(boxnm)
  371.                    call ppm_ImportGraphic(boxnm, 'Genies:noten_pausen/achtelPause', pause)
  372.                    xw = xg/8
  373.                    notex = notex+xw
  374.                end
  375.  
  376.                when nn== '16' then do
  377.  
  378.                    y = 2.21+zz
  379.                    Pbox = ppm_CreateBox(x, y, 0.27, 0.42, 0)
  380.                    boxnm = ppm_DocNextBox(Pbox)
  381.                    call ppm_DeleteContents(boxnm)
  382.                    call ppm_ImportGraphic(boxnm, 'Genies:noten_pausen/sechzehntelPause', pause)
  383.                    xw = xg/16
  384.                    notex = notex+xw
  385.                end
  386.                otherwise
  387.                do
  388.                 call ppm_ClearStatus()
  389.                 exit_msg("Da war ein Fehler")
  390.                end
  391.            end
  392.            if notex >=18.7 then
  393.                do
  394.                  notex = 2.5
  395.                  zz = zz + zdist
  396.                end
  397.           return
  398.         end
  399.  
  400.       when nw == 'l' then
  401.         do
  402.           select
  403.  
  404.            when nn== '1' then
  405.                do
  406.                xw = xg
  407.                notex = notex+xw
  408.                end
  409.            when nn== '2' then
  410.                do
  411.                xw = xg/2
  412.                notex = notex+xw
  413.                end
  414.            when nn== '4' then
  415.                do
  416.                xw = xg/4
  417.                notex = notex+xw
  418.                end
  419.            when nn== '8' then
  420.                do
  421.                xw = xg/8
  422.                notex = notex+xw
  423.                end
  424.            when nn== '16' then
  425.                do
  426.                xw = xg/16
  427.                notex = notex+xw
  428.                end
  429.            when nn == 't' then
  430.                do
  431.                xw  = 0.2
  432.                notex = notex+xw
  433.                end
  434.            when nn == '0' then do
  435.                end
  436.            otherwise
  437.            do
  438.             call ppm_ClearStatus()
  439.             exit_msg("Da war ein Fehler")
  440.            end
  441.           end
  442.            if notex >=18.7 then
  443.                do
  444.                  notex = 2.5
  445.                  zz = zz + zdist
  446.                end
  447.           return
  448.         end
  449.       otherwise
  450.       do
  451.        call ppm_ClearStatus()
  452.        exit_msg("Da war ein Fehler!")
  453.       end
  454.     end
  455.  
  456.  
  457.      /* y-Raster der Noten - Notenhälse nach oben (y-Position der Box) */
  458.  
  459.         call ppm_SetLineWeight(0.25)
  460.  
  461.       select
  462.         when nn=='f#5'  then
  463.         do
  464.             yw = 0.645
  465.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  466.             call ppm_SetSize(20)
  467.             call ppm_TextIntoBox(box#id, 's')
  468.             call ppm_DrawLine(notex, zz+1.8, (notex+0.4), zz+1.8)
  469.             call ppm_DrawLine(notex, zz+1.6, (notex+0.4), zz+1.6)
  470.             call ppm_DrawLine(notex, zz+1.4, (notex+0.4), zz+1.4)
  471.         end
  472.         when nn=='f5'  then
  473.         do
  474.             yw = 0.645
  475.             if al == 'a' then call auflhoch()
  476.             call ppm_DrawLine(notex, zz+1.8, (notex+0.4), zz+1.8)
  477.             call ppm_DrawLine(notex, zz+1.6, (notex+0.4), zz+1.6)
  478.             call ppm_DrawLine(notex, zz+1.4, (notex+0.4), zz+1.4)
  479.         end
  480.         when nn=='e5'  then
  481.         do
  482.             yw = 0.745
  483.             if al == 'a' then call auflhoch()
  484.             call ppm_DrawLine(notex, zz+1.8, (notex+0.4), zz+1.8)
  485.             call ppm_DrawLine(notex, zz+1.6, (notex+0.4), zz+1.6)
  486.             call ppm_DrawLine(notex, zz+1.4, (notex+0.4), zz+1.4)
  487.         end
  488.         when nn=='eb5'  then
  489.         do
  490.             yw = 0.745
  491.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.21, 0.35, 0.75, 0)
  492.             call ppm_SetSize(20)
  493.             call ppm_TextIntoBox(box#id, 'f')
  494.             call ppm_DrawLine(notex, zz+1.8, (notex+0.4), zz+1.8)
  495.             call ppm_DrawLine(notex, zz+1.6, (notex+0.4), zz+1.6)
  496.             call ppm_DrawLine(notex, zz+1.4, (notex+0.4), zz+1.4)
  497.         end
  498.         when nn=='d#5'  then
  499.         do
  500.             yw = 0.845
  501.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  502.             call ppm_SetSize(20)
  503.             call ppm_TextIntoBox(box#id, 's')
  504.             call ppm_DrawLine(notex, zz+1.8, (notex+0.4), zz+1.8)
  505.             call ppm_DrawLine(notex, zz+1.6, (notex+0.4), zz+1.6)
  506.         end
  507.         when nn=='d5'  then
  508.         do
  509.             yw = 0.845
  510.             if al == 'a' then call auflhoch()
  511.             call ppm_DrawLine(notex, zz+1.8, (notex+0.4), zz+1.8)
  512.             call ppm_DrawLine(notex, zz+1.6, (notex+0.4), zz+1.6)
  513.         end
  514.         when nn=='db5'  then
  515.         do
  516.             yw = 0.845
  517.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.21, 0.35, 0.75, 0)
  518.             call ppm_SetSize(20)
  519.             call ppm_TextIntoBox(box#id, 'f')
  520.             call ppm_DrawLine(notex, zz+1.8, (notex+0.4), zz+1.8)
  521.             call ppm_DrawLine(notex, zz+1.6, (notex+0.4), zz+1.6)
  522.         end
  523.         when nn=='c#5'  then
  524.         do
  525.             yw = 0.945
  526.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  527.             call ppm_SetSize(20)
  528.             call ppm_TextIntoBox(box#id, 's')
  529.             call ppm_DrawLine(notex, zz+1.8, (notex+0.4), zz+1.8)
  530.             call ppm_DrawLine(notex, zz+1.6, (notex+0.4), zz+1.6)
  531.         end
  532.         when nn=='c5'  then
  533.         do
  534.             yw = 0.945
  535.             if al == 'a' then call auflhoch()
  536.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  537.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  538.         end
  539.  
  540.         when nn=='h4'  then
  541.         do
  542.             yw = 1.045
  543.             if al == 'a' then call auflhoch()
  544.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  545.         end
  546.  
  547.         when nn=='b4'  then
  548.         do
  549.             yw = 1.045
  550.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  551.         end
  552.  
  553.         when nn=='a#4' then
  554.         do
  555.             yw = 1.145
  556.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  557.             call ppm_SetSize(20)
  558.             call ppm_TextIntoBox(box#id, 's')
  559.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  560.         end
  561.  
  562.         when nn=='a4'  then
  563.         do
  564.             yw = 1.145
  565.             if al == 'a' then call auflhoch()
  566.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  567.         end
  568.  
  569.         when nn=='ab4' then
  570.         do
  571.             yw = 1.145
  572.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.21, 0.35, 0.75, 0)
  573.             call ppm_SetSize(20)
  574.             call ppm_TextIntoBox(box#id, 'f')
  575.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  576.         end
  577.  
  578.         when nn=='g#4' then
  579.         do
  580.             yw = 1.245
  581.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  582.             call ppm_SetSize(20)
  583.             call ppm_TextIntoBox(box#id, 's')
  584.         end
  585.         when nn=='g4'  then
  586.         do
  587.             yw = 1.245
  588.             if al == 'a' then call auflhoch()
  589.         end
  590.         when nn=='gb4' then
  591.         do
  592.             yw = 1.245
  593.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.21, 0.35, 0.75, 0)
  594.             call ppm_SetSize(20)
  595.             call ppm_TextIntoBox(box#id, 'f')
  596.         end
  597.         when nn=='f#4' then
  598.         do
  599.             yw = 1.345
  600.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  601.             call ppm_SetSize(20)
  602.             call ppm_TextIntoBox(box#id, 's')
  603.         end
  604.         when nn=='f4'  then
  605.         do
  606.             yw = 1.345
  607.             if al == 'a' then call auflhoch()
  608.         end
  609.         when nn=='e#4' then
  610.         do
  611.             yw = 1.445
  612.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  613.             call ppm_SetSize(20)
  614.             call ppm_TextIntoBox(box#id, 's')
  615.         end
  616.         when nn=='e4'  then
  617.         do
  618.             yw = 1.445
  619.             if al == 'a' then call auflhoch()
  620.         end
  621.         when nn=='eb4' then
  622.         do
  623.             yw = 1.445
  624.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.21, 0.35, 0.75, 0)
  625.             call ppm_SetSize(20)
  626.             call ppm_TextIntoBox(box#id, 'f')
  627.         end
  628.         when nn=='d#4' then
  629.         do
  630.             yw = 1.545
  631.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  632.             call ppm_SetSize(20)
  633.             call ppm_TextIntoBox(box#id, 's')
  634.         end
  635.         when nn=='d4'  then
  636.         do
  637.             yw = 1.545
  638.             if al == 'a' then call auflhoch()
  639.         end
  640.         when nn=='db4' then
  641.         do
  642.             yw = 1.545
  643.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.21, 0.35, 0.75, 0)
  644.             call ppm_SetSize(20)
  645.             call ppm_TextIntoBox(box#id, 'f')
  646.         end
  647.         when nn=='c#4' then
  648.         do
  649.             yw = 1.645
  650.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  651.             call ppm_SetSize(20)
  652.             call ppm_TextIntoBox(box#id, 's')
  653.         end
  654.         when nn=='c4'  then
  655.         do
  656.             yw = 1.645
  657.             if al == 'a' then call auflhoch()
  658.         end
  659.         when nn=='h3'  then
  660.         do
  661.             yw = 1.745
  662.             if al == 'a' then call auflhoch()
  663.         end
  664.         when nn=='b3'  then
  665.         do
  666.             yw = 1.745
  667.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.21, 0.35, 0.75, 0)
  668.             call ppm_SetSize(20)
  669.             call ppm_TextIntoBox(box#id, 'f')
  670.         end
  671.         when nn=='a#3' then
  672.         do
  673.             yw = 1.845
  674.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  675.             call ppm_SetSize(20)
  676.             call ppm_TextIntoBox(box#id, 's')
  677.         end
  678.         when nn=='a3'  then
  679.         do
  680.             yw = 1.845
  681.             if al == 'a' then call auflhoch()
  682.         end
  683.         when nn=='ab3' then
  684.         do
  685.             yw = 1.845
  686.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.21, 0.35, 0.75, 0)
  687.             call ppm_SetSize(20)
  688.             call ppm_TextIntoBox(box#id, 'f')
  689.         end
  690.         when nn=='g#3' then
  691.         do
  692.             yw = 1.945
  693.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  694.             call ppm_SetSize(20)
  695.             call ppm_TextIntoBox(box#id, 's')
  696.         end
  697.         when nn=='g3'  then
  698.         do
  699.             yw = 1.945
  700.             if al == 'a' then call auflhoch()
  701.         end
  702.         when nn=='gb3' then
  703.         do
  704.             yw = 1.945
  705.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.21, 0.35, 0.75, 0)
  706.             call ppm_SetSize(20)
  707.             call ppm_TextIntoBox(box#id, 'f')
  708.         end
  709.         when nn=='f#3' then
  710.         do
  711.             yw = 2.045
  712.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  713.             call ppm_SetSize(20)
  714.             call ppm_TextIntoBox(box#id, 's')
  715.         end
  716.         when nn=='f3'  then
  717.         do
  718.             yw = 2.045
  719.             if al == 'a' then call auflhoch()
  720.         end
  721.         when nn=='e#3' then
  722.         do
  723.             yw = 2.145
  724.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  725.             call ppm_SetSize(20)
  726.             call ppm_TextIntoBox(box#id, 's')
  727.         end
  728.         when nn=='e3'  then
  729.         do
  730.             yw = 2.145
  731.             if al == 'a' then call auflhoch()
  732.         end
  733.         when nn=='eb3' then
  734.         do
  735.             yw = 2.145
  736.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.21, 0.35, 0.75, 0)
  737.             call ppm_SetSize(20)
  738.             call ppm_TextIntoBox(box#id, 'f')
  739.         end
  740.         when nn=='d#3' then
  741.         do
  742.             yw = 2.245
  743.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  744.             call ppm_SetSize(20)
  745.             call ppm_TextIntoBox(box#id, 's')
  746.         end
  747.         when nn=='d3'  then
  748.         do
  749.             yw = 2.245
  750.             if al == 'a' then call auflhoch()
  751.         end
  752.         when nn=='db3' then
  753.         do
  754.             yw = 2.245
  755.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.21, 0.35, 0.75, 0)
  756.             call ppm_SetSize(20)
  757.             call ppm_TextIntoBox(box#id, 'f')
  758.         end
  759.  
  760.         when nn=='c#3' then
  761.         do
  762.             yw = 2.345
  763.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  764.             call ppm_SetSize(20)
  765.             call ppm_TextIntoBox(box#id, 's')
  766.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  767.         end
  768.  
  769.         when nn=='c3'  then
  770.         do
  771.             yw = 2.345
  772.             if al == 'a' then call auflhoch()
  773.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  774.         end
  775.  
  776.         when nn=='h2'  then
  777.         do
  778.             yw = 2.445
  779.             if al == 'a' then call auflhoch()
  780.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  781.         end
  782.  
  783.         when nn=='b2'  then
  784.         do
  785.             yw = 2.445
  786.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.21, 0.35, 0.75, 0)
  787.             call ppm_SetSize(20)
  788.             call ppm_TextIntoBox(box#id, 'f')
  789.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  790.         end
  791.  
  792.         when nn=='a#2' then
  793.         do
  794.             yw = 2.545
  795.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  796.             call ppm_SetSize(20)
  797.             call ppm_TextIntoBox(box#id, 's')
  798.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  799.             call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  800.         end
  801.  
  802.         when nn=='a2'  then
  803.         do
  804.             yw = 2.545
  805.             if al == 'a' then call auflhoch()
  806.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  807.             call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  808.         end
  809.  
  810.         when nn=='ab2'  then
  811.         do
  812.             yw = 2.545
  813.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.21, 0.35, 0.75, 0)
  814.             call ppm_SetSize(20)
  815.             call ppm_TextIntoBox(box#id, 'f')
  816.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  817.             call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  818.         end
  819.  
  820.         when nn=='g#2'  then
  821.         do
  822.             yw = 2.645
  823.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  824.             call ppm_SetSize(20)
  825.             call ppm_TextIntoBox(box#id, 's')
  826.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  827.             call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  828.         end
  829.  
  830.         when nn=='g2'  then
  831.         do
  832.             yw = 2.645
  833.             if al == 'a' then call auflhoch()
  834.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  835.             call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  836.         end
  837.  
  838.  
  839.         when nn=='gb2'  then
  840.         do
  841.             yw = 2.645
  842.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.21, 0.35, 0.75, 0)
  843.             call ppm_SetSize(20)
  844.             call ppm_TextIntoBox(box#id, 'f')
  845.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  846.             call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  847.         end
  848.  
  849.         when nn=='f#2'  then
  850.         do
  851.             yw = 2.745
  852.             box#id = ppm_CreateBox(notex-0.23, yw+zz+0.32, 0.35, 0.75, 0)
  853.             call ppm_SetSize(20)
  854.             call ppm_TextIntoBox(box#id, 's')
  855.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  856.             call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  857.             call ppm_DrawLine(notex, zz+3.4, (notex+0.4), zz+3.4)
  858.         end
  859.  
  860.         when nn=='f2'  then
  861.         do
  862.             yw = 2.745
  863.             if al == 'a' then call auflhoch()
  864.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  865.             call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  866.             call ppm_DrawLine(notex, zz+3.4, (notex+0.4), zz+3.4)
  867.         end
  868.  
  869.         when nn=='e2'  then
  870.         do
  871.             yw = 2.845
  872.             if al == 'a' then call auflhoch()
  873.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  874.             call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  875.             call ppm_DrawLine(notex, zz+3.4, (notex+0.4), zz+3.4)
  876.         end
  877.  
  878.  
  879.     /* y-Raster der Noten - Notenhälse nach unten */
  880.  
  881.         when nn=='F#5'  then
  882.         do
  883.             yw = 1.12
  884.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.15, 0.35, 0.75, 0)
  885.             call ppm_SetSize(20)
  886.             call ppm_TextIntoBox(box#id, 's')
  887.             call ppm_DrawLine(notex, zz+1.8, (notex+0.4), zz+1.8)
  888.             call ppm_DrawLine(notex, zz+1.6, (notex+0.4), zz+1.6)
  889.             call ppm_DrawLine(notex, zz+1.4, (notex+0.4), zz+1.4)
  890.         end
  891.         when nn=='F5'  then
  892.         do
  893.             yw = 1.12
  894.             if al == 'a' then call aufltief()
  895.             call ppm_DrawLine(notex, zz+1.8, (notex+0.4), zz+1.8)
  896.             call ppm_DrawLine(notex, zz+1.6, (notex+0.4), zz+1.6)
  897.             call ppm_DrawLine(notex, zz+1.4, (notex+0.4), zz+1.4)
  898.         end
  899.         when nn=='E5'  then
  900.         do
  901.             yw = 1.22
  902.             if al == 'a' then call aufltief()
  903.             call ppm_DrawLine(notex, zz+1.8, (notex+0.4), zz+1.8)
  904.             call ppm_DrawLine(notex, zz+1.6, (notex+0.4), zz+1.6)
  905.             call ppm_DrawLine(notex, zz+1.4, (notex+0.4), zz+1.4)
  906.         end
  907.         when nn=='Eb5'  then
  908.         do
  909.             yw = 1.22
  910.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.27, 0.35, 0.75, 0)
  911.             call ppm_SetSize(20)
  912.             call ppm_TextIntoBox(box#id, 'f')
  913.             call ppm_DrawLine(notex, zz+1.8, (notex+0.4), zz+1.8)
  914.             call ppm_DrawLine(notex, zz+1.6, (notex+0.4), zz+1.6)
  915.             call ppm_DrawLine(notex, zz+1.4, (notex+0.4), zz+1.4)
  916.         end
  917.         when nn=='D#5'  then
  918.         do
  919.             yw = 1.32
  920.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.15, 0.35, 0.75, 0)
  921.             call ppm_SetSize(20)
  922.             call ppm_TextIntoBox(box#id, 's')
  923.             call ppm_DrawLine(notex, zz+1.8, (notex+0.4), zz+1.8)
  924.             call ppm_DrawLine(notex, zz+1.6, (notex+0.4), zz+1.6)
  925.         end
  926.         when nn=='D5'  then
  927.         do
  928.             yw = 1.32
  929.             if al == 'a' then call aufltief()
  930.             call ppm_DrawLine(notex, zz+1.8, (notex+0.4), zz+1.8)
  931.             call ppm_DrawLine(notex, zz+1.6, (notex+0.4), zz+1.6)
  932.         end
  933.         when nn=='Db5'  then
  934.         do
  935.             yw = 1.32
  936.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.27, 0.35, 0.75, 0)
  937.             call ppm_SetSize(20)
  938.             call ppm_TextIntoBox(box#id, 'f')
  939.             call ppm_DrawLine(notex, zz+1.8, (notex+0.4), zz+1.8)
  940.             call ppm_DrawLine(notex, zz+1.6, (notex+0.4), zz+1.6)
  941.         end
  942.         when nn=='C#5'  then
  943.         do
  944.             yw = 1.42
  945.             call ppm_DrawLine(notex, zz+1.8, (notex+0.4), zz+1.8)
  946.             call ppm_DrawLine(notex, zz+1.6, (notex+0.4), zz+1.6)
  947.         end
  948.  
  949.         when nn=='C5'  then
  950.         do
  951.             yw = 1.42
  952.             if al == 'a' then call aufltief()
  953.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  954.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  955.         end
  956.  
  957.         when nn=='H4'  then
  958.         do
  959.             yw = 1.52
  960.             if al == 'a' then call aufltief()
  961.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  962.         end
  963.  
  964.         when nn=='B4'  then
  965.         do
  966.             yw = 1.52
  967.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.27, 0.35, 0.75, 0)
  968.             call ppm_SetSize(20)
  969.             call ppm_TextIntoBox(box#id, 'f')
  970.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  971.         end
  972.  
  973.         when nn=='A#4' then
  974.         do
  975.             yw = 1.62
  976.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.15, 0.35, 0.75, 0)
  977.             call ppm_SetSize(20)
  978.             call ppm_TextIntoBox(box#id, 's')
  979.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  980.         end
  981.  
  982.         when nn=='A4'  then
  983.         do
  984.             yw = 1.62
  985.             if al == 'a' then call aufltief()
  986.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  987.         end
  988.  
  989.         when nn=='AB4' then nn = 'Ab4'
  990.         when nn=='Ab4' then
  991.         do
  992.             yw = 1.62
  993.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.27, 0.35, 0.75, 0)
  994.             call ppm_SetSize(20)
  995.             call ppm_TextIntoBox(box#id, 'f')
  996.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  997.         end
  998.  
  999.         when nn=='G#4' then
  1000.         do
  1001.             yw = 1.72
  1002.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.15, 0.35, 0.75, 0)
  1003.             call ppm_SetSize(20)
  1004.             call ppm_TextIntoBox(box#id, 's')
  1005.         end
  1006.         when nn=='G4'  then
  1007.         do
  1008.             yw = 1.72
  1009.             if al == 'a' then call aufltief()
  1010.         end
  1011.         when nn=='GB4' then nn = 'Gb4'
  1012.         when nn=='Gb4' then
  1013.         do
  1014.             yw = 1.72
  1015.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.27, 0.35, 0.75, 0)
  1016.             call ppm_SetSize(20)
  1017.             call ppm_TextIntoBox(box#id, 'f')
  1018.         end
  1019.         when nn=='F#4' then
  1020.         do
  1021.             yw = 1.82
  1022.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.15, 0.35, 0.75, 0)
  1023.             call ppm_SetSize(20)
  1024.             call ppm_TextIntoBox(box#id, 's')
  1025.         end
  1026.         when nn=='F4'  then
  1027.         do
  1028.             yw = 1.82
  1029.             if al == 'a' then call aufltief()
  1030.         end
  1031.         when nn=='E#4' then
  1032.         do
  1033.             yw = 1.92
  1034.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.15, 0.35, 0.75, 0)
  1035.             call ppm_SetSize(20)
  1036.             call ppm_TextIntoBox(box#id, 's')
  1037.         end
  1038.         when nn=='E4'  then
  1039.         do
  1040.             yw = 1.92
  1041.             if al == 'a' then call aufltief()
  1042.         end
  1043.         when nn=='EB4' then nn = 'Eb4'
  1044.         when nn=='Eb4' then
  1045.         do
  1046.             yw = 1.92
  1047.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.27, 0.35, 0.75, 0)
  1048.             call ppm_SetSize(20)
  1049.             call ppm_TextIntoBox(box#id, 'f')
  1050.         end
  1051.         when nn=='D#4' then
  1052.         do
  1053.             yw = 2.02
  1054.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.15, 0.35, 0.75, 0)
  1055.             call ppm_SetSize(20)
  1056.             call ppm_TextIntoBox(box#id, 's')
  1057.         end
  1058.         when nn=='D4'  then
  1059.         do
  1060.             yw = 2.02
  1061.             if al == 'a' then call aufltief()
  1062.         end
  1063.         when nn=='DB4' then nn = 'Db4'
  1064.         when nn=='Db4' then
  1065.         do
  1066.             yw = 2.02
  1067.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.27, 0.35, 0.75, 0)
  1068.             call ppm_SetSize(20)
  1069.             call ppm_TextIntoBox(box#id, 'f')
  1070.         end
  1071.         when nn=='C#4' then
  1072.         do
  1073.             yw = 2.12
  1074.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.15, 0.35, 0.75, 0)
  1075.             call ppm_SetSize(20)
  1076.             call ppm_TextIntoBox(box#id, 's')
  1077.         end
  1078.         when nn=='C4'  then
  1079.         do
  1080.             yw = 2.12
  1081.             if al == 'a' then call aufltief()
  1082.         end
  1083.         when nn=='H3'  then
  1084.         do
  1085.             yw = 2.22
  1086.             if al == 'a' then call aufltief()
  1087.         end
  1088.         when nn=='B3'  then
  1089.         do
  1090.             yw = 2.22
  1091.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.27, 0.35, 0.75, 0)
  1092.             call ppm_SetSize(20)
  1093.             call ppm_TextIntoBox(box#id, 'f')
  1094.         end
  1095.         when nn=='A#3' then
  1096.         do
  1097.             yw = 2.32
  1098.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.15, 0.35, 0.75, 0)
  1099.             call ppm_SetSize(20)
  1100.             call ppm_TextIntoBox(box#id, 's')
  1101.         end
  1102.         when nn=='A3'  then
  1103.         do
  1104.             yw = 2.32
  1105.             if al == 'a' then call aufltief()
  1106.         end
  1107.         when nn=='AB3' then nn = 'Ab3'
  1108.         when nn=='Ab3' then
  1109.         do
  1110.             yw = 2.32
  1111.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.27, 0.35, 0.75, 0)
  1112.             call ppm_SetSize(20)
  1113.             call ppm_TextIntoBox(box#id, 'f')
  1114.         end
  1115.         when nn=='G#3' then
  1116.         do
  1117.             yw = 2.42
  1118.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.15, 0.35, 0.75, 0)
  1119.             call ppm_SetSize(20)
  1120.             call ppm_TextIntoBox(box#id, 's')
  1121.         end
  1122.         when nn=='G3'  then
  1123.         do
  1124.             yw = 2.42
  1125.             if al == 'a' then call aufltief()
  1126.         end
  1127.         when nn=='GB3' then nn = 'Gb3'
  1128.         when nn=='Gb3' then
  1129.         do
  1130.             yw = 2.42
  1131.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.27, 0.35, 0.75, 0)
  1132.             call ppm_SetSize(20)
  1133.             call ppm_TextIntoBox(box#id, 'f')
  1134.         end
  1135.         when nn=='F#3' then
  1136.         do
  1137.             yw = 2.52
  1138.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.15, 0.35, 0.75, 0)
  1139.             call ppm_SetSize(20)
  1140.             call ppm_TextIntoBox(box#id, 's')
  1141.         end
  1142.         when nn=='F3'  then
  1143.         do
  1144.             yw = 2.52
  1145.             if al == 'a' then call aufltief()
  1146.         end
  1147.         when nn=='E#3' then
  1148.         do
  1149.             yw = 2.62
  1150.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.15, 0.35, 0.75, 0)
  1151.             call ppm_SetSize(20)
  1152.             call ppm_TextIntoBox(box#id, 's')
  1153.         end
  1154.         when nn=='E3'  then
  1155.         do
  1156.             yw = 2.62
  1157.             if al == 'a' then call aufltief()
  1158.         end
  1159.         when nn=='EB3' then nn = 'Eb3'
  1160.         when nn=='Eb3' then
  1161.         do
  1162.             yw = 2.62
  1163.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.27, 0.35, 0.75, 0)
  1164.             call ppm_SetSize(20)
  1165.             call ppm_TextIntoBox(box#id, 'f')
  1166.         end
  1167.         when nn=='D#3' then
  1168.         do
  1169.             yw = 2.72
  1170.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.15, 0.35, 0.75, 0)
  1171.             call ppm_SetSize(20)
  1172.             call ppm_TextIntoBox(box#id, 's')
  1173.         end
  1174.         when nn=='D3'  then
  1175.         do
  1176.             yw = 2.72
  1177.             if al == 'a' then call aufltief()
  1178.         end
  1179.         when nn=='DB3' then nn = 'Db3'
  1180.         when nn=='Db3' then
  1181.         do
  1182.             yw = 2.72
  1183.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.27, 0.35, 0.75, 0)
  1184.             call ppm_SetSize(20)
  1185.             call ppm_TextIntoBox(box#id, 'f')
  1186.         end
  1187.  
  1188.         when nn=='C#3' then
  1189.         do
  1190.             yw = 2.82
  1191.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.15, 0.35, 0.75, 0)
  1192.             call ppm_SetSize(20)
  1193.             call ppm_TextIntoBox(box#id, 's')
  1194.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  1195.         end
  1196.  
  1197.         when nn=='C3'  then
  1198.         do
  1199.             yw = 2.82
  1200.             if al == 'a' then call aufltief()
  1201.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  1202.         end
  1203.  
  1204.         when nn=='H2'  then
  1205.         do
  1206.             yw = 2.92
  1207.             if al == 'a' then call aufltief()
  1208.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  1209.         end
  1210.  
  1211.         when nn=='B2'  then
  1212.         do
  1213.             yw = 2.92
  1214.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.27, 0.35, 0.75, 0)
  1215.             call ppm_SetSize(20)
  1216.             call ppm_TextIntoBox(box#id, 'f')
  1217.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  1218.         end
  1219.  
  1220.         when nn=='A#2' then
  1221.         do
  1222.             yw = 3.02
  1223.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.15, 0.35, 0.75, 0)
  1224.             call ppm_SetSize(20)
  1225.             call ppm_TextIntoBox(box#id, 's')
  1226.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  1227.             call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  1228.         end
  1229.  
  1230.         when nn=='A2'  then
  1231.         do
  1232.           yw = 3.02
  1233.             if al == 'a' then call aufltief()
  1234.           call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  1235.           call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  1236.         end
  1237.  
  1238.         when nn=='AB3' then nn = 'Ab3'
  1239.         when nn=='Ab2'  then
  1240.         do
  1241.           yw = 3.02
  1242.           box#id = ppm_CreateBox(notex-0.23, yw+zz-0.27, 0.35, 0.75, 0)
  1243.           call ppm_SetSize(20)
  1244.           call ppm_TextIntoBox(box#id, 'f')
  1245.           call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  1246.           call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  1247.         end
  1248.  
  1249.         when nn=='G#2'  then
  1250.         do
  1251.             yw = 3.12
  1252.             box#id = ppm_CreateBox(notex-0.23, yw+zz-0.15, 0.35, 0.75, 0)
  1253.             call ppm_SetSize(20)
  1254.             call ppm_TextIntoBox(box#id, 's')
  1255.             call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  1256.             call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  1257.         end
  1258.  
  1259.         when nn=='G2'  then
  1260.         do
  1261.           yw = 3.12
  1262.             if al == 'a' then call aufltief()
  1263.           call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  1264.           call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  1265.         end
  1266.  
  1267.         when nn=='GB2' then nn = 'Gb2'
  1268.         when nn=='Gb2'  then
  1269.         do
  1270.           yw = 3.12
  1271.           box#id = ppm_CreateBox(notex-0.23, yw+zz-0.27, 0.35, 0.75, 0)
  1272.           call ppm_SetSize(20)
  1273.           call ppm_TextIntoBox(box#id, 'f')
  1274.           call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  1275.           call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  1276.         end
  1277.  
  1278.         when nn=='F#2'  then
  1279.         do
  1280.           yw = 3.22
  1281.           box#id = ppm_CreateBox(notex-0.23, yw+zz-0.15, 0.35, 0.75, 0)
  1282.           call ppm_SetSize(20)
  1283.           call ppm_TextIntoBox(box#id, 's')
  1284.           call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  1285.           call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  1286.           call ppm_DrawLine(notex, zz+3.4, (notex+0.4), zz+3.4)
  1287.         end
  1288.  
  1289.         when nn=='F2'  then
  1290.         do
  1291.           yw = 3.22
  1292.             if al == 'a' then call aufltief()
  1293.           call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  1294.           call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  1295.           call ppm_DrawLine(notex, zz+3.4, (notex+0.4), zz+3.4)
  1296.         end
  1297.  
  1298.         when nn=='E2'  then
  1299.         do
  1300.           yw = 3.32
  1301.             if al == 'a' then call aufltief()
  1302.           call ppm_DrawLine(notex, zz+3, (notex+0.4), zz+3)
  1303.           call ppm_DrawLine(notex, zz+3.2, (notex+0.4), zz+3.2)
  1304.           call ppm_DrawLine(notex, zz+3.4, (notex+0.4), zz+3.4)
  1305.         end
  1306.         otherwise
  1307.         do
  1308.          call ppm_ClearStatus()
  1309.          exit_msg("Da war ein Fehler!")
  1310.         end
  1311.       end
  1312.  
  1313.  
  1314.         /* größe einer Notenbox */
  1315.           notewidht = 0.64
  1316.           noteheight = 0.97
  1317.  
  1318.  
  1319.           boxid = ppm_CreateBox(notex, yw+zz, notewidht, noteheight, 0)
  1320.           call ppm_SetSize(notepkt)
  1321.           call ppm_TextIntoBox(boxid, nw)
  1322.           bakx = notex
  1323.           notex = (notex + xw)
  1324.           if notex >=18.7 then
  1325.               do
  1326.                 notex = 2.5
  1327.                 zz = zz + zdist
  1328.               end
  1329.     return
  1330. end
  1331. exit
  1332.  
  1333. auflhoch:
  1334. do
  1335.   Pbox = ppm_CreateBox(notex-0.34, yw+zz+0.07, 0.6, 1.2, 0)
  1336.   boxnm = ppm_DocNextBox(Pbox)
  1337.   call ppm_DeleteContents(boxnm)
  1338.   call ppm_ImportGraphic(boxnm, 'Genies:noten_pausen/Auflsng', Zeichen)
  1339.   return
  1340. end
  1341.  
  1342. aufltief:
  1343. do
  1344.   Pbox = ppm_CreateBox(notex-0.34, yw+zz-0.4, 0.6, 1.2, 0)
  1345.   boxnm = ppm_DocNextBox(Pbox)
  1346.   call ppm_DeleteContents(boxnm)
  1347.   call ppm_ImportGraphic(boxnm, 'Genies:noten_pausen/Auflsng', Zeichen)
  1348.   return
  1349. end
  1350.  
  1351. break_d:
  1352. break_e:
  1353. break_c:
  1354. halt:
  1355.     call exit_msg("User aborted Genie!")
  1356.  
  1357.  
  1358. exit_msg: procedure
  1359. do
  1360.     parse arg message
  1361.  
  1362.     if message ~= '' then
  1363.     call ppm_Inform(1,message,)
  1364.  
  1365.     call ppm_ClearStatus()
  1366.     call ppm_AutoUpdate(1)
  1367.     exit
  1368. end
  1369.  
  1370.